package cn.iocoder.yudao.module.cms.appversion.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

@Tag(name = "版本更新新增/修改 Request VO")
@Data
public class AppVersionSaveReqVO {

    @Schema(description = "唯一编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "10043")
    private Long id;

    @Schema(description = "类型：0-UNIAPP、1-安卓APP")
    private Integer type;

    @Schema(description = "版本代号", requiredMode = Schema.RequiredMode.REQUIRED, example = "20240100")
    @NotNull(message = "版本代号不能为空")
    private Integer versionCode;

    @Schema(description = "版本名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "2024.1.0")
    @NotEmpty(message = "版本名称不能为空")
    private String versionName;

    @Schema(description = "更新内容", requiredMode = Schema.RequiredMode.REQUIRED, example = "修复了已知的一些BUG")
    @NotEmpty(message = "更新内容不能为空")
    private String content;

    @Schema(description = "下载地址", requiredMode = Schema.RequiredMode.REQUIRED, example = "https://example.local/x.wgt")
    @NotEmpty(message = "下载地址不能为空")
    private String url;

}
